home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Apple WWDC 1996
/
WWDC96_1996 (CD).toast
/
Technology Materials
/
MacOS 8 Resources
/
Developer Tools
/
Mac OS 8 Interfaces & Libraries
/
Interfaces
/
IDLIncludes
/
Drag.idl
< prev
next >
Wrap
Text File
|
1996-05-01
|
10KB
|
272 lines
/*
File: Drag.idl
Contains: Drag and Drop Interfaces.
Version: Technology: System 7.5
Release: Universal Interfaces 3.0d3 on Copland DR1
Copyright: © 1984-1996 by Apple Computer, Inc. All rights reserved.
Bugs?: If you find a problem with this file, send the file and version
information (from above) and the problem description to:
Internet: apple.bugs@applelink.apple.com
AppleLink: APPLE.BUGS
*/
#ifndef __DRAG_IDL__
#define __DRAG_IDL__
#include <somobj.idl>
#include <somcls.idl>
#ifndef __SCRAP_IDL__
#include <Scrap.idl>
#endif
#ifndef __APPLEEVENTS_IDL__
#include <AppleEvents.idl>
#endif
#ifndef __QUICKDRAW_IDL__
#include <Quickdraw.idl>
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#ifndef __TEXTEDIT_IDL__
#include <TextEdit.idl>
#endif
#ifndef __FILES_IDL__
#include <Files.idl>
#endif
#ifndef __EVENTS_IDL__
#include <Events.idl>
#endif
#endif
#ifdef __SOMIDL__
/*
_________________________________________________________________________________________________________
* DRAG MANAGER DATA TYPES
Currently there are two data types representing a drag in this interface file; ScrapRef and
DragReference. It is safe to assume:
ScrapRef == DragReference
The two types can be used interchangably throughout the Drag interface file. ScrapRef is the
new System 8 Drag Manager data type. API's that are deprecated for System 8 will always
take a DragReference as their parameter.
For now though, use them interchangably.
_________________________________________________________________________________________________________
*/
typedef ScrapRef DragReference;
typedef ScrapRef DragScrapRef;
typedef ScrapItemUserReference ItemReference;
typedef ScrapItemType FlavorType;
/*
_________________________________________________________________________________________________________
* DRAG ATTRIBUTES
_________________________________________________________________________________________________________
*/
typedef OptionBits DragAttributes;
/*
_________________________________________________________________________________________________________
* DRAG IMAGE FLAGS
_________________________________________________________________________________________________________
*/
typedef OptionBits DragImageFlags;
/*
_________________________________________________________________________________________________________
* DRAG IMAGE TRANSLUCENCY LEVELS
_________________________________________________________________________________________________________
*/
typedef UInt32 DragImageTranslucency;
/*
_________________________________________________________________________________________________________
* DRAG DRAWING PROCEDURE MESSAGES
_________________________________________________________________________________________________________
*/
typedef SInt16 DragRegionMessage;
/*
_________________________________________________________________________________________________________
* ZOOM ACCELERATION
_________________________________________________________________________________________________________
*/
typedef SInt16 ZoomAcceleration;
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
/*
_________________________________________________________________________________________________________
* FLAVOR FLAGS
_________________________________________________________________________________________________________
*/
typedef OptionBits FlavorFlags;
/*
_________________________________________________________________________________________________________
* SPECIAL FLAVORS
_________________________________________________________________________________________________________
*/
/*
_________________________________________________________________________________________________________
* DRAG TRACKING HANDLER MESSAGES
_________________________________________________________________________________________________________
*/
typedef SInt16 DragTrackingMessage;
/*
_________________________________________________________________________________________________________
* HFS FLAVORS
_________________________________________________________________________________________________________
*/
typedef SOMLargeStruct HFSFlavor; /* Derived from a struct of 80 bytes in size */
typedef SOMLargeStruct PromiseHFSFlavor; /* Derived from a struct of 14 bytes in size */
/*
_________________________________________________________________________________________________________
* APPLICATION-DEFINED DRAG HANDLER ROUTINES
_________________________________________________________________________________________________________
*/
typedef OpaquePtr DragTrackingHandlerProcPtr;
typedef OpaquePtr DragTrackingHandlerUPP;
typedef OpaquePtr DragReceiveHandlerProcPtr;
typedef OpaquePtr DragReceiveHandlerUPP;
/*
_________________________________________________________________________________________________________
* APPLICATION-DEFINED ROUTINES
_________________________________________________________________________________________________________
*/
typedef OpaquePtr DragSendDataProcPtr;
typedef OpaquePtr DragSendDataUPP;
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
typedef OpaquePtr DragInputProcPtr;
typedef OpaquePtr DragInputUPP;
typedef OpaquePtr DragDrawingProcPtr;
typedef OpaquePtr DragDrawingUPP;
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
/*
_________________________________________________________________________________________________________
* INSTALLING AND REMOVING HANDLERS API'S
_________________________________________________________________________________________________________
*/
/*
_________________________________________________________________________________________________________
* CREATING & DISPOSING
_________________________________________________________________________________________________________
*/
/*
_________________________________________________________________________________________________________
* ADDING DRAG ITEM FLAVORS
_________________________________________________________________________________________________________
*/
/*
_________________________________________________________________________________________________________
* PROVIDING CALLBACK PROCEDURES
_________________________________________________________________________________________________________
*/
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
/*
_________________________________________________________________________________________________________
* SETTING THE DRAG IMAGE
_________________________________________________________________________________________________________
*/
#endif
#if FOR_SYSTEM8_COOPERATIVE
/*
_________________________________________________________________________________________________________
* SETTING THE DRAG IMAGE TRANSLUCENCY LEVEL
_________________________________________________________________________________________________________
*/
/*
_________________________________________________________________________________________________________
* PERFORMING A DRAG
_________________________________________________________________________________________________________
*/
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
/*
_________________________________________________________________________________________________________
* GETTING DRAG ITEM INFORMATION
_________________________________________________________________________________________________________
*/
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
/*
_________________________________________________________________________________________________________
* DRAG ITEM BOUNDS
_________________________________________________________________________________________________________
*/
/*
_________________________________________________________________________________________________________
* DROP LOCATIONS
_________________________________________________________________________________________________________
*/
/*
_________________________________________________________________________________________________________
* GETTING INFORMATION ABOUT A DRAG
_________________________________________________________________________________________________________
*/
/*
_________________________________________________________________________________________________________
* DRAG HIGHLIGHTING
_________________________________________________________________________________________________________
*/
#endif
/*
_________________________________________________________________________________________________________
* UTILITIES
_________________________________________________________________________________________________________
*/
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_COOPERATIVE
#endif
#if FOR_SYSTEM7_AND_SYSTEM8_DEPRECATED
/*
_________________________________________________________________________________________________________
* OLD NAMES
These are provided for compatiblity with older source bases. It is recommended to not use them since
they may removed from this interface file at any time.
_________________________________________________________________________________________________________
*/
#endif
#endif /* __SOMIDL__ */
#endif /* __DRAG_IDL__ */